Computers have become highly integrated in the workforce, in the home, in mobile devices, and many other places. Computers can process massive amounts of information quickly and efficiently. Software applications designed to run on computer systems allow users to perform a wide variety of functions including business applications, schoolwork, entertainment and more. Software applications are often designed to perform specific tasks, such as word processor applications for drafting documents, or email programs for sending, receiving and organizing email.
In many cases, software applications are designed to interact with other software applications or other computer systems. For example, software applications may provide services to various computer system users. In some cases, these services may be provided to customers on a subscription basis. The customers will typically log in to the server or computer system providing the service and, once authenticated, the user will have access to the service.
Over time, service providers tend to make changes to the services they provide. The changes may be implemented in the form of a new service version. In some cases, the new version may differ substantially from the original (or last) version. In such cases, the user may be hesitant to change to the newer version without having tried it. Moreover, effecting such changes may require a great deal of time and effort on the part of the user.